package com.ccc.boot.system.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelIgnore;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ccc.boot.base.BaseDO;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.time.LocalDate;

/**
 * 行政分区基本信息表
 *
 * @author superC
 * @version 0.1.0
 * @date 2022-04-14
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("sys_addr")
public class SysAddr extends BaseDO {

    private static final long serialVersionUID = 396223587461691220L;

    /**
     * 上级行政区划代码
     */
    @ExcelIgnore
    private Long pid;

    /**
     * 行政区划代码
     */
    @TableField("ad_cd")
    @Excel(name = "行政区划代码", width = 20)
    private String adCd;

    /**
     * 行政区划名称
     */
    @TableField("ad_nm")
    @Excel(name = "行政区划名称", width = 40)
    private String adNm;

    /**
     * 行政区划简称
     */
    @TableField("ad_shnm")
    @Excel(name = "行政区划简称", width = 20)
    private String adShnm;

    /**
     * 行政区划面积
     */
    @TableField("ad_a")
    @Excel(name = "行政区划面积", width = 20)
    private Double adA;

    /**
     * 层级代码
     */
    @Excel(name = "层级代码", width = 15)
    private String level;

    /**
     * 开始启用时间
     */
    @TableField("st_dt")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelIgnore
    private LocalDate stDt;

    /**
     * 停止启用时间
     */
    @TableField("end_dt")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelIgnore
    private LocalDate endDt;

    /**
     * 状态
     */
    @ExcelIgnore
    private Integer status;

    /**
     * 排序
     */
    @TableField("order_num")
    @ExcelIgnore
    private Integer orderNum;

    /**
     * 数据录入人员ID
     */
    @TableField("user_id")
    @ExcelIgnore
    private Long userId;

    /**
     * 备注
     */
    @Excel(name = "备注", width = 20)
    private String memo;


}